/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Dao;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

/**
 * Classe de Utilidade a implementação do JPA no Dao
 * O objetivo é deixar a chamada de criação e chamada ao persistence.xml de 
 * forma única.
 * @author thiago
 */
public class PersistenciaUtil {
    
    /**
     * Atributo estático para criar o Entity Manager
     */
    private static EntityManagerFactory emf = null;
    
    /**
     * Cria a conexão e retorna o Entity Manager para ser utilizado
     * @return EntityManager
     */
    public static EntityManager getEntityManager(){
        if (emf == null){
            emf = Persistence.createEntityManagerFactory("SistemaAcademicoJPA");
        }
        return(emf.createEntityManager());
    }
    
    /**
     * Fecha conexões abertas.
     * @param em 
     */
    public static void fecharConexao(EntityManager em){
        if (em != null){
            em.close();
        }
    }
}
